package com.huaxin.device.dto.request;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import lombok.Data;

import java.math.BigDecimal;

@Data
public class DeviceReadingCircuitBreakerUpdateReqDTO {
    /**
     * 读数记录ID
     */
    @NotBlank(message = "ID不能为空")
    @Schema(description = "读数记录ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "123e4567-e89b-12d3-a456-426614174000")
    private String id;

    /**
     * 设备实例ID
     */
    @NotBlank(message = "设备ID不能为空")
    @Schema(description = "设备实例ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "d123e456-789a-bcde-f012-3456789abcde")
    private String deviceId;

    /**
     * 电压 (V)
     */
    @Schema(description = "电压 (V)", example = "220.50")
    private BigDecimal voltage;

    /**
     * 电流 (A)
     */
    @Schema(description = "电流 (A)", example = "15.60")
    private BigDecimal current;

    /**
     * 功率 (kW)
     */
    @Schema(description = "功率 (kW)", example = "3.43")
    private BigDecimal power;

    /**
     * 今日用电量 (kWh)
     */
    @Schema(description = "今日用电量 (kWh)", example = "28.70")
    private BigDecimal energyToday;

    /**
     * 功率因数
     */
    @Schema(description = "功率因数", example = "0.95")
    private BigDecimal powerFactor;
}